<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AceButton: ace_button::Encoded4To2ButtonConfig Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">AceButton
   &#160;<span id="projectnumber">1.10.0</span>
   </div>
   <div id="projectbrief">An adjustable, compact, event-driven button library for Arduino.</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><b>ace_button</b></li><li class="navelem"><a class="el" href="classace__button_1_1Encoded4To2ButtonConfig.html">Encoded4To2ButtonConfig</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classace__button_1_1Encoded4To2ButtonConfig-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">ace_button::Encoded4To2ButtonConfig Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A <a class="el" href="classace__button_1_1ButtonConfig.html" title="Class that defines the timing parameters and event handler of an AceButton or a group of AceButton in...">ButtonConfig</a> that handles an 4-to-2 binary encoder which converts 4 inputs into 2 outputs.  
 <a href="classace__button_1_1Encoded4To2ButtonConfig.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="Encoded4To2ButtonConfig_8h_source.html">Encoded4To2ButtonConfig.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for ace_button::Encoded4To2ButtonConfig:</div>
<div class="dyncontent">
<div class="center"><img src="classace__button_1_1Encoded4To2ButtonConfig__inherit__graph.png" border="0" usemap="#aace__button_1_1Encoded4To2ButtonConfig_inherit__map" alt="Inheritance graph"/></div>
<map name="aace__button_1_1Encoded4To2ButtonConfig_inherit__map" id="aace__button_1_1Encoded4To2ButtonConfig_inherit__map">
<area shape="rect" title="A ButtonConfig that handles an 4&#45;to&#45;2 binary encoder which converts 4 inputs into 2 outputs." alt="" coords="5,80,236,121"/>
<area shape="rect" href="classace__button_1_1ButtonConfig.html" title="Class that defines the timing parameters and event handler of an AceButton or a group of AceButton in..." alt="" coords="27,5,214,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for ace_button::Encoded4To2ButtonConfig:</div>
<div class="dyncontent">
<div class="center"><img src="classace__button_1_1Encoded4To2ButtonConfig__coll__graph.png" border="0" usemap="#aace__button_1_1Encoded4To2ButtonConfig_coll__map" alt="Collaboration graph"/></div>
<map name="aace__button_1_1Encoded4To2ButtonConfig_coll__map" id="aace__button_1_1Encoded4To2ButtonConfig_coll__map">
<area shape="rect" title="A ButtonConfig that handles an 4&#45;to&#45;2 binary encoder which converts 4 inputs into 2 outputs." alt="" coords="5,80,236,121"/>
<area shape="rect" href="classace__button_1_1ButtonConfig.html" title="Class that defines the timing parameters and event handler of an AceButton or a group of AceButton in..." alt="" coords="27,5,214,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad04fcc5c8bf65b83a8a9bc9b47a570c3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1Encoded4To2ButtonConfig.html#ad04fcc5c8bf65b83a8a9bc9b47a570c3">Encoded4To2ButtonConfig</a> (uint8_t pin0, uint8_t pin1, uint8_t defaultReleasedState=HIGH)</td></tr>
<tr class="separator:ad04fcc5c8bf65b83a8a9bc9b47a570c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4607829b4dc2bbf93fdb0608e1677496"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1Encoded4To2ButtonConfig.html#a4607829b4dc2bbf93fdb0608e1677496">readButton</a> (uint8_t pin) override</td></tr>
<tr class="memdesc:a4607829b4dc2bbf93fdb0608e1677496"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return state of the encoded 'pin' number, corresponding to the pull-down states of the actual pins.  <a href="classace__button_1_1Encoded4To2ButtonConfig.html#a4607829b4dc2bbf93fdb0608e1677496">More...</a><br /></td></tr>
<tr class="separator:a4607829b4dc2bbf93fdb0608e1677496"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classace__button_1_1ButtonConfig"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classace__button_1_1ButtonConfig')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classace__button_1_1ButtonConfig.html">ace_button::ButtonConfig</a></td></tr>
<tr class="memitem:aa81d236e4030f4abc48eb01ae9ade202 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="aa81d236e4030f4abc48eb01ae9ade202"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#aa81d236e4030f4abc48eb01ae9ade202">ButtonConfig</a> ()=default</td></tr>
<tr class="memdesc:aa81d236e4030f4abc48eb01ae9ade202 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:aa81d236e4030f4abc48eb01ae9ade202 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa118a96cb344ada0230eb441f9729d5e inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#aa118a96cb344ada0230eb441f9729d5e">~ButtonConfig</a> ()=default</td></tr>
<tr class="memdesc:aa118a96cb344ada0230eb441f9729d5e inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">If the <a class="el" href="classace__button_1_1ButtonConfig.html" title="Class that defines the timing parameters and event handler of an AceButton or a group of AceButton in...">ButtonConfig</a> is created and deleted on the heap, a virtual destructor is technically required by the C++ language to prevent memory leaks.  <a href="classace__button_1_1ButtonConfig.html#aa118a96cb344ada0230eb441f9729d5e">More...</a><br /></td></tr>
<tr class="separator:aa118a96cb344ada0230eb441f9729d5e inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2866cf111973f8b1bf4ae0e7df17b6dd inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a2866cf111973f8b1bf4ae0e7df17b6dd"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a2866cf111973f8b1bf4ae0e7df17b6dd">getDebounceDelay</a> () const</td></tr>
<tr class="memdesc:a2866cf111973f8b1bf4ae0e7df17b6dd inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Milliseconds to wait for debouncing. <br /></td></tr>
<tr class="separator:a2866cf111973f8b1bf4ae0e7df17b6dd inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a39fcc939e2dce12f2ddbf803747a6e inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a2a39fcc939e2dce12f2ddbf803747a6e"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a2a39fcc939e2dce12f2ddbf803747a6e">getClickDelay</a> () const</td></tr>
<tr class="memdesc:a2a39fcc939e2dce12f2ddbf803747a6e inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Milliseconds to wait for a possible click. <br /></td></tr>
<tr class="separator:a2a39fcc939e2dce12f2ddbf803747a6e inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0098549db5df3c730f64f4235845a5a5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a0098549db5df3c730f64f4235845a5a5"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a0098549db5df3c730f64f4235845a5a5">getDoubleClickDelay</a> () const</td></tr>
<tr class="memdesc:a0098549db5df3c730f64f4235845a5a5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Milliseconds between the first and second click to register as a double-click. <br /></td></tr>
<tr class="separator:a0098549db5df3c730f64f4235845a5a5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ded707bd12aaf7bbcb14e431ec77e15 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a3ded707bd12aaf7bbcb14e431ec77e15"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a3ded707bd12aaf7bbcb14e431ec77e15">getLongPressDelay</a> () const</td></tr>
<tr class="memdesc:a3ded707bd12aaf7bbcb14e431ec77e15 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Milliseconds for a long press event. <br /></td></tr>
<tr class="separator:a3ded707bd12aaf7bbcb14e431ec77e15 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeca9329775d17a06433c9588fca28695 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#aeca9329775d17a06433c9588fca28695">getRepeatPressDelay</a> () const</td></tr>
<tr class="memdesc:aeca9329775d17a06433c9588fca28695 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Milliseconds that a button needs to be Pressed down before the start of the sequence of RepeatPressed events.  <a href="classace__button_1_1ButtonConfig.html#aeca9329775d17a06433c9588fca28695">More...</a><br /></td></tr>
<tr class="separator:aeca9329775d17a06433c9588fca28695 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c5d86932a98f71030422ef367b57a25 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a5c5d86932a98f71030422ef367b57a25"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a5c5d86932a98f71030422ef367b57a25">getRepeatPressInterval</a> () const</td></tr>
<tr class="memdesc:a5c5d86932a98f71030422ef367b57a25 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Milliseconds between two successive RepeatPressed events. <br /></td></tr>
<tr class="separator:a5c5d86932a98f71030422ef367b57a25 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd90e97a98826ca8e47933aecb8b2d08 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="afd90e97a98826ca8e47933aecb8b2d08"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#afd90e97a98826ca8e47933aecb8b2d08">getHeartBeatInterval</a> () const</td></tr>
<tr class="memdesc:afd90e97a98826ca8e47933aecb8b2d08 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Milliseconds between two successive HeartBeat events. <br /></td></tr>
<tr class="separator:afd90e97a98826ca8e47933aecb8b2d08 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9860d2c8a6ab33d40ea126b02d168cab inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a9860d2c8a6ab33d40ea126b02d168cab"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a9860d2c8a6ab33d40ea126b02d168cab">setDebounceDelay</a> (uint16_t debounceDelay)</td></tr>
<tr class="memdesc:a9860d2c8a6ab33d40ea126b02d168cab inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the debounceDelay milliseconds. <br /></td></tr>
<tr class="separator:a9860d2c8a6ab33d40ea126b02d168cab inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef65e12128997c46bc2754a988b98f14 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="aef65e12128997c46bc2754a988b98f14"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#aef65e12128997c46bc2754a988b98f14">setClickDelay</a> (uint16_t clickDelay)</td></tr>
<tr class="memdesc:aef65e12128997c46bc2754a988b98f14 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the clickDelay milliseconds. <br /></td></tr>
<tr class="separator:aef65e12128997c46bc2754a988b98f14 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a367a809017e1d633a5cf6b117981d579 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a367a809017e1d633a5cf6b117981d579"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a367a809017e1d633a5cf6b117981d579">setDoubleClickDelay</a> (uint16_t doubleClickDelay)</td></tr>
<tr class="memdesc:a367a809017e1d633a5cf6b117981d579 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the doubleClickDelay milliseconds. <br /></td></tr>
<tr class="separator:a367a809017e1d633a5cf6b117981d579 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d90d39aeddacb5abc9d8741611d7c4a inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a7d90d39aeddacb5abc9d8741611d7c4a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a7d90d39aeddacb5abc9d8741611d7c4a">setLongPressDelay</a> (uint16_t longPressDelay)</td></tr>
<tr class="memdesc:a7d90d39aeddacb5abc9d8741611d7c4a inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the longPressDelay milliseconds. <br /></td></tr>
<tr class="separator:a7d90d39aeddacb5abc9d8741611d7c4a inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af813c969eddd884e9fa83b334a59a0a5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="af813c969eddd884e9fa83b334a59a0a5"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#af813c969eddd884e9fa83b334a59a0a5">setRepeatPressDelay</a> (uint16_t repeatPressDelay)</td></tr>
<tr class="memdesc:af813c969eddd884e9fa83b334a59a0a5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the repeatPressDelay milliseconds. <br /></td></tr>
<tr class="separator:af813c969eddd884e9fa83b334a59a0a5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1b1217e0042512fc8d9b6544536aed3 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="aa1b1217e0042512fc8d9b6544536aed3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#aa1b1217e0042512fc8d9b6544536aed3">setRepeatPressInterval</a> (uint16_t repeatPressInterval)</td></tr>
<tr class="memdesc:aa1b1217e0042512fc8d9b6544536aed3 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the repeatPressInterval milliseconds. <br /></td></tr>
<tr class="separator:aa1b1217e0042512fc8d9b6544536aed3 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c21a9b859c82c78581b340f2de864d5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a0c21a9b859c82c78581b340f2de864d5"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a0c21a9b859c82c78581b340f2de864d5">setHeartBeatInterval</a> (uint16_t heartBeatInterval)</td></tr>
<tr class="memdesc:a0c21a9b859c82c78581b340f2de864d5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the heartBeatInterval milliseconds. <br /></td></tr>
<tr class="separator:a0c21a9b859c82c78581b340f2de864d5 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a440271e22d5e7e161cdcb3b73f092111 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">virtual unsigned long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a440271e22d5e7e161cdcb3b73f092111">getClock</a> ()</td></tr>
<tr class="memdesc:a440271e22d5e7e161cdcb3b73f092111 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the milliseconds of the internal clock.  <a href="classace__button_1_1ButtonConfig.html#a440271e22d5e7e161cdcb3b73f092111">More...</a><br /></td></tr>
<tr class="separator:a440271e22d5e7e161cdcb3b73f092111 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeaa36505747dbd23bbd3a77e228820c9 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="aeaa36505747dbd23bbd3a77e228820c9"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#aeaa36505747dbd23bbd3a77e228820c9">isFeature</a> (<a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a> features) const</td></tr>
<tr class="memdesc:aeaa36505747dbd23bbd3a77e228820c9 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the given features are enabled. <br /></td></tr>
<tr class="separator:aeaa36505747dbd23bbd3a77e228820c9 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf3a103f188bb8e669c77ab852553e9a inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="adf3a103f188bb8e669c77ab852553e9a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#adf3a103f188bb8e669c77ab852553e9a">setFeature</a> (<a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a> features)</td></tr>
<tr class="memdesc:adf3a103f188bb8e669c77ab852553e9a inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable the given features. <br /></td></tr>
<tr class="separator:adf3a103f188bb8e669c77ab852553e9a inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30a6c6c13148081da4746e50eae21873 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a30a6c6c13148081da4746e50eae21873"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a30a6c6c13148081da4746e50eae21873">clearFeature</a> (<a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a> features)</td></tr>
<tr class="memdesc:a30a6c6c13148081da4746e50eae21873 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disable the given features. <br /></td></tr>
<tr class="separator:a30a6c6c13148081da4746e50eae21873 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af947cc369000a9c3619ac16b417db8b7 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#af947cc369000a9c3619ac16b417db8b7">resetFeatures</a> ()</td></tr>
<tr class="memdesc:af947cc369000a9c3619ac16b417db8b7 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disable all (externally visible) features.  <a href="classace__button_1_1ButtonConfig.html#af947cc369000a9c3619ac16b417db8b7">More...</a><br /></td></tr>
<tr class="separator:af947cc369000a9c3619ac16b417db8b7 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06b1f78f5f1f03bc9af51af3345cc22c inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classace__button_1_1ButtonConfig.html#a6d9db3c7b221b474c3cfd8fca5f4ba1e">EventHandler</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a06b1f78f5f1f03bc9af51af3345cc22c">getEventHandler</a> () const ACE_BUTTON_DEPRECATED</td></tr>
<tr class="memdesc:a06b1f78f5f1f03bc9af51af3345cc22c inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the eventHandler function pointer.  <a href="classace__button_1_1ButtonConfig.html#a06b1f78f5f1f03bc9af51af3345cc22c">More...</a><br /></td></tr>
<tr class="separator:a06b1f78f5f1f03bc9af51af3345cc22c inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb346713a5bd136a39d5e6fb16892996 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#abb346713a5bd136a39d5e6fb16892996">dispatchEvent</a> (<a class="el" href="classace__button_1_1AceButton.html">AceButton</a> *button, uint8_t eventType, uint8_t buttonState) const</td></tr>
<tr class="memdesc:abb346713a5bd136a39d5e6fb16892996 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dispatch the event to the handler.  <a href="classace__button_1_1ButtonConfig.html#abb346713a5bd136a39d5e6fb16892996">More...</a><br /></td></tr>
<tr class="separator:abb346713a5bd136a39d5e6fb16892996 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af916ea5ae0194afeac3a6fd6e25a13d1 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#af916ea5ae0194afeac3a6fd6e25a13d1">setEventHandler</a> (<a class="el" href="classace__button_1_1ButtonConfig.html#a6d9db3c7b221b474c3cfd8fca5f4ba1e">EventHandler</a> eventHandler)</td></tr>
<tr class="memdesc:af916ea5ae0194afeac3a6fd6e25a13d1 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Install the EventHandler function pointer.  <a href="classace__button_1_1ButtonConfig.html#af916ea5ae0194afeac3a6fd6e25a13d1">More...</a><br /></td></tr>
<tr class="separator:af916ea5ae0194afeac3a6fd6e25a13d1 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fda9545052a13d64b383d11ceea5806 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a6fda9545052a13d64b383d11ceea5806">setIEventHandler</a> (<a class="el" href="classace__button_1_1IEventHandler.html">IEventHandler</a> *eventHandler)</td></tr>
<tr class="memdesc:a6fda9545052a13d64b383d11ceea5806 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Install the <a class="el" href="classace__button_1_1IEventHandler.html" title="Interface of the class that will handle the button event.">IEventHandler</a> object pointer.  <a href="classace__button_1_1ButtonConfig.html#a6fda9545052a13d64b383d11ceea5806">More...</a><br /></td></tr>
<tr class="separator:a6fda9545052a13d64b383d11ceea5806 inherit pub_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classace__button_1_1ButtonConfig"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classace__button_1_1ButtonConfig')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classace__button_1_1ButtonConfig.html">ace_button::ButtonConfig</a></td></tr>
<tr class="memitem:a1c7c7bfc42738278330243dfc43f23eb inherit pub_types_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">typedef uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a></td></tr>
<tr class="memdesc:a1c7c7bfc42738278330243dfc43f23eb inherit pub_types_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of the feature flag.  <a href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">More...</a><br /></td></tr>
<tr class="separator:a1c7c7bfc42738278330243dfc43f23eb inherit pub_types_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d9db3c7b221b474c3cfd8fca5f4ba1e inherit pub_types_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a6d9db3c7b221b474c3cfd8fca5f4ba1e">EventHandler</a>) (<a class="el" href="classace__button_1_1AceButton.html">AceButton</a> *button, uint8_t eventType, uint8_t buttonState)</td></tr>
<tr class="memdesc:a6d9db3c7b221b474c3cfd8fca5f4ba1e inherit pub_types_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">The event handler signature.  <a href="classace__button_1_1ButtonConfig.html#a6d9db3c7b221b474c3cfd8fca5f4ba1e">More...</a><br /></td></tr>
<tr class="separator:a6d9db3c7b221b474c3cfd8fca5f4ba1e inherit pub_types_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_methods_classace__button_1_1ButtonConfig"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classace__button_1_1ButtonConfig')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classace__button_1_1ButtonConfig.html">ace_button::ButtonConfig</a></td></tr>
<tr class="memitem:a585353712d2c76d91c10e67102cb614d inherit pub_static_methods_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a585353712d2c76d91c10e67102cb614d"></a>
static <a class="el" href="classace__button_1_1ButtonConfig.html">ButtonConfig</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a585353712d2c76d91c10e67102cb614d">getSystemButtonConfig</a> ()</td></tr>
<tr class="memdesc:a585353712d2c76d91c10e67102cb614d inherit pub_static_methods_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a pointer to the singleton instance of the <a class="el" href="classace__button_1_1ButtonConfig.html" title="Class that defines the timing parameters and event handler of an AceButton or a group of AceButton in...">ButtonConfig</a> which is attached to all <a class="el" href="classace__button_1_1AceButton.html" title="An Adjustable Compact Event-driven (ACE) Button library that debounces and dispatches button events t...">AceButton</a> instances by default. <br /></td></tr>
<tr class="separator:a585353712d2c76d91c10e67102cb614d inherit pub_static_methods_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_attribs_classace__button_1_1ButtonConfig"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_classace__button_1_1ButtonConfig')"><img src="closed.png" alt="-"/>&#160;Static Public Attributes inherited from <a class="el" href="classace__button_1_1ButtonConfig.html">ace_button::ButtonConfig</a></td></tr>
<tr class="memitem:a8fbe63588107a1375d05911d27df3ad8 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a8fbe63588107a1375d05911d27df3ad8"></a>
static const uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a8fbe63588107a1375d05911d27df3ad8">kDebounceDelay</a> = 20</td></tr>
<tr class="memdesc:a8fbe63588107a1375d05911d27df3ad8 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default milliseconds returned by <a class="el" href="classace__button_1_1ButtonConfig.html#a2866cf111973f8b1bf4ae0e7df17b6dd" title="Milliseconds to wait for debouncing.">getDebounceDelay()</a>. <br /></td></tr>
<tr class="separator:a8fbe63588107a1375d05911d27df3ad8 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5691e38564dae63592d22abf74fb15f3 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a5691e38564dae63592d22abf74fb15f3"></a>
static const uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a5691e38564dae63592d22abf74fb15f3">kClickDelay</a> = 200</td></tr>
<tr class="memdesc:a5691e38564dae63592d22abf74fb15f3 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default milliseconds returned by <a class="el" href="classace__button_1_1ButtonConfig.html#a2a39fcc939e2dce12f2ddbf803747a6e" title="Milliseconds to wait for a possible click.">getClickDelay()</a>. <br /></td></tr>
<tr class="separator:a5691e38564dae63592d22abf74fb15f3 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0a0d503f3396acef6a84aca4390fd6a inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="af0a0d503f3396acef6a84aca4390fd6a"></a>
static const uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#af0a0d503f3396acef6a84aca4390fd6a">kDoubleClickDelay</a> = 400</td></tr>
<tr class="memdesc:af0a0d503f3396acef6a84aca4390fd6a inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default milliseconds returned by <a class="el" href="classace__button_1_1ButtonConfig.html#a0098549db5df3c730f64f4235845a5a5" title="Milliseconds between the first and second click to register as a double-click.">getDoubleClickDelay()</a>. <br /></td></tr>
<tr class="separator:af0a0d503f3396acef6a84aca4390fd6a inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60bf588a2c067a561887eadf18cedccd inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a60bf588a2c067a561887eadf18cedccd"></a>
static const uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a60bf588a2c067a561887eadf18cedccd">kLongPressDelay</a> = 1000</td></tr>
<tr class="memdesc:a60bf588a2c067a561887eadf18cedccd inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default milliseconds returned by <a class="el" href="classace__button_1_1ButtonConfig.html#a3ded707bd12aaf7bbcb14e431ec77e15" title="Milliseconds for a long press event.">getLongPressDelay()</a>. <br /></td></tr>
<tr class="separator:a60bf588a2c067a561887eadf18cedccd inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d20bc5800532085fd046fc64b80ae9f inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a3d20bc5800532085fd046fc64b80ae9f"></a>
static const uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a3d20bc5800532085fd046fc64b80ae9f">kRepeatPressDelay</a> = 1000</td></tr>
<tr class="memdesc:a3d20bc5800532085fd046fc64b80ae9f inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default milliseconds returned by <a class="el" href="classace__button_1_1ButtonConfig.html#aeca9329775d17a06433c9588fca28695" title="Milliseconds that a button needs to be Pressed down before the start of the sequence of RepeatPressed...">getRepeatPressDelay()</a>. <br /></td></tr>
<tr class="separator:a3d20bc5800532085fd046fc64b80ae9f inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a218c1aa09b45ea2fe6884e3af3a18310 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a218c1aa09b45ea2fe6884e3af3a18310"></a>
static const uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a218c1aa09b45ea2fe6884e3af3a18310">kRepeatPressInterval</a> = 200</td></tr>
<tr class="memdesc:a218c1aa09b45ea2fe6884e3af3a18310 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default milliseconds returned by <a class="el" href="classace__button_1_1ButtonConfig.html#a5c5d86932a98f71030422ef367b57a25" title="Milliseconds between two successive RepeatPressed events.">getRepeatPressInterval()</a>. <br /></td></tr>
<tr class="separator:a218c1aa09b45ea2fe6884e3af3a18310 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a918276f7ac8cf6db59a7013c1242e848 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a918276f7ac8cf6db59a7013c1242e848"></a>
static const uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a918276f7ac8cf6db59a7013c1242e848">kHeartBeatInterval</a> = 5000</td></tr>
<tr class="memdesc:a918276f7ac8cf6db59a7013c1242e848 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default milliseconds returned by <a class="el" href="classace__button_1_1ButtonConfig.html#afd90e97a98826ca8e47933aecb8b2d08" title="Milliseconds between two successive HeartBeat events.">getHeartBeatInterval()</a>. <br /></td></tr>
<tr class="separator:a918276f7ac8cf6db59a7013c1242e848 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac662555100416c4843c6ee5156699c56 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="ac662555100416c4843c6ee5156699c56"></a>
static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#ac662555100416c4843c6ee5156699c56">kFeatureClick</a> = 0x01</td></tr>
<tr class="memdesc:ac662555100416c4843c6ee5156699c56 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to activate the <a class="el" href="classace__button_1_1AceButton.html#a21797e5e069da3f7bba42b40ab3a7305" title="Button was clicked (Pressed and Released within ButtonConfig::getClickDelay()).">AceButton::kEventClicked</a> event. <br /></td></tr>
<tr class="separator:ac662555100416c4843c6ee5156699c56 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a638943c127dd60288a83e83260825d01 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a638943c127dd60288a83e83260825d01">kFeatureDoubleClick</a> = 0x02</td></tr>
<tr class="memdesc:a638943c127dd60288a83e83260825d01 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to activate the <a class="el" href="classace__button_1_1AceButton.html#a0c63f30106e4688425ba37d8f7a9546b" title="Button was double-clicked.">AceButton::kEventDoubleClicked</a> event.  <a href="classace__button_1_1ButtonConfig.html#a638943c127dd60288a83e83260825d01">More...</a><br /></td></tr>
<tr class="separator:a638943c127dd60288a83e83260825d01 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d175560047a4ca245186fb26fa413f2 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a4d175560047a4ca245186fb26fa413f2"></a>
static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a4d175560047a4ca245186fb26fa413f2">kFeatureLongPress</a> = 0x04</td></tr>
<tr class="memdesc:a4d175560047a4ca245186fb26fa413f2 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to activate the AceButton::kEventLongPress event. <br /></td></tr>
<tr class="separator:a4d175560047a4ca245186fb26fa413f2 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9b941ca87f0eeb899ed503481439c92 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="ac9b941ca87f0eeb899ed503481439c92"></a>
static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#ac9b941ca87f0eeb899ed503481439c92">kFeatureRepeatPress</a> = 0x08</td></tr>
<tr class="memdesc:ac9b941ca87f0eeb899ed503481439c92 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to activate the <a class="el" href="classace__button_1_1AceButton.html#a9c4195cb128da40677ea223eb81743c9" title="Button was held down and auto generated multiple presses.">AceButton::kEventRepeatPressed</a> event. <br /></td></tr>
<tr class="separator:ac9b941ca87f0eeb899ed503481439c92 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57327066d135bcc99c4a68b55fca162e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a57327066d135bcc99c4a68b55fca162e"></a>
static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a57327066d135bcc99c4a68b55fca162e">kFeatureSuppressAfterClick</a> = 0x10</td></tr>
<tr class="memdesc:a57327066d135bcc99c4a68b55fca162e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to suppress kEventReleased after a kEventClicked. <br /></td></tr>
<tr class="separator:a57327066d135bcc99c4a68b55fca162e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7642e16b2cc8dd0136312054b1da8f9e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a7642e16b2cc8dd0136312054b1da8f9e">kFeatureSuppressAfterDoubleClick</a> = 0x20</td></tr>
<tr class="memdesc:a7642e16b2cc8dd0136312054b1da8f9e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to suppress kEventReleased after a kEventDoubleClicked.  <a href="classace__button_1_1ButtonConfig.html#a7642e16b2cc8dd0136312054b1da8f9e">More...</a><br /></td></tr>
<tr class="separator:a7642e16b2cc8dd0136312054b1da8f9e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15b8e90b1ffe01009a1d7dd18b5b6aae inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a15b8e90b1ffe01009a1d7dd18b5b6aae"></a>
static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a15b8e90b1ffe01009a1d7dd18b5b6aae">kFeatureSuppressAfterLongPress</a> = 0x40</td></tr>
<tr class="memdesc:a15b8e90b1ffe01009a1d7dd18b5b6aae inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to suppress kEventReleased after a kEventLongPressed. <br /></td></tr>
<tr class="separator:a15b8e90b1ffe01009a1d7dd18b5b6aae inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b43b591ba53d360e787bf780af0abbc inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="a6b43b591ba53d360e787bf780af0abbc"></a>
static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a6b43b591ba53d360e787bf780af0abbc">kFeatureSuppressAfterRepeatPress</a> = 0x80</td></tr>
<tr class="memdesc:a6b43b591ba53d360e787bf780af0abbc inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to suppress kEventReleased after a kEventRepeatPressed. <br /></td></tr>
<tr class="separator:a6b43b591ba53d360e787bf780af0abbc inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80d621dbcf533c9bb91a111b8fec2c53 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#a80d621dbcf533c9bb91a111b8fec2c53">kFeatureSuppressClickBeforeDoubleClick</a> = 0x100</td></tr>
<tr class="memdesc:a80d621dbcf533c9bb91a111b8fec2c53 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to suppress kEventClicked before a kEventDoubleClicked.  <a href="classace__button_1_1ButtonConfig.html#a80d621dbcf533c9bb91a111b8fec2c53">More...</a><br /></td></tr>
<tr class="separator:a80d621dbcf533c9bb91a111b8fec2c53 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af54fa7ecae6078d9d014b7651acbddbe inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="af54fa7ecae6078d9d014b7651acbddbe"></a>
static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#af54fa7ecae6078d9d014b7651acbddbe">kFeatureHeartBeat</a> = 0x200</td></tr>
<tr class="memdesc:af54fa7ecae6078d9d014b7651acbddbe inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to enable periodic kEventHeartBeat. <br /></td></tr>
<tr class="separator:af54fa7ecae6078d9d014b7651acbddbe inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5a27fc7c6397ff6c5edc307988506a4 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top"><a id="ac5a27fc7c6397ff6c5edc307988506a4"></a>
static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#ac5a27fc7c6397ff6c5edc307988506a4">kInternalFeatureIEventHandler</a> = 0x8000</td></tr>
<tr class="memdesc:ac5a27fc7c6397ff6c5edc307988506a4 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal flag to indicate that mEventHandler is an <a class="el" href="classace__button_1_1IEventHandler.html" title="Interface of the class that will handle the button event.">IEventHandler</a> object pointer instead of an EventHandler function pointer. <br /></td></tr>
<tr class="separator:ac5a27fc7c6397ff6c5edc307988506a4 inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfd736234ae852f22894c7aceb4e534e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classace__button_1_1ButtonConfig.html#a1c7c7bfc42738278330243dfc43f23eb">FeatureFlagType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classace__button_1_1ButtonConfig.html#abfd736234ae852f22894c7aceb4e534e">kFeatureSuppressAll</a></td></tr>
<tr class="memdesc:abfd736234ae852f22894c7aceb4e534e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convenience flag to suppress all suppressions.  <a href="classace__button_1_1ButtonConfig.html#abfd736234ae852f22894c7aceb4e534e">More...</a><br /></td></tr>
<tr class="separator:abfd736234ae852f22894c7aceb4e534e inherit pub_static_attribs_classace__button_1_1ButtonConfig"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A <a class="el" href="classace__button_1_1ButtonConfig.html" title="Class that defines the timing parameters and event handler of an AceButton or a group of AceButton in...">ButtonConfig</a> that handles an 4-to-2 binary encoder which converts 4 inputs into 2 outputs. </p>
<p>In practice, this means that 3 buttons can be handled with 2 pins, because the 0th button is used to represent "no button pressed". One easy way to perform the 4-to-2 encoding is to use 2 diodes with 3 switches, so that each switch translates into a 2-bit binary number:</p>
<ul>
<li>S0 = 00 = 0 [unavailable, see below]</li>
<li>S1 = 01 = 1</li>
<li>S2 = 10 = 2</li>
<li>S3 = 11 = 3</li>
</ul>
<p>Button S0 cannot be used because the code 00 is used to indicate that no button was pressed. </p>

<p class="definition">Definition at line <a class="el" href="Encoded4To2ButtonConfig_8h_source.html#l00047">47</a> of file <a class="el" href="Encoded4To2ButtonConfig_8h_source.html">Encoded4To2ButtonConfig.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ad04fcc5c8bf65b83a8a9bc9b47a570c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad04fcc5c8bf65b83a8a9bc9b47a570c3">&#9670;&nbsp;</a></span>Encoded4To2ButtonConfig()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ace_button::Encoded4To2ButtonConfig::Encoded4To2ButtonConfig </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>pin0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>pin1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>defaultReleasedState</em> = <code>HIGH</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pin0</td><td>the pin number representing bit0 of the binary encoder </td></tr>
    <tr><td class="paramname">pin1</td><td>the pin number representing bit1 of the binary encoder </td></tr>
    <tr><td class="paramname">defaultReleasedState</td><td>state of the encoder bit when the button is in the released state. For a pull-up wiring, the state of the pin is HIGH when the button is released. This value is used to configure wiring of the virtual button, so that it matches the wiring of the physical buttons. The LS74148 encoder uses a pull-up wiring, so this should be set HIGH. The default value is HIGH. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="Encoded4To2ButtonConfig_8h_source.html#l00060">60</a> of file <a class="el" href="Encoded4To2ButtonConfig_8h_source.html">Encoded4To2ButtonConfig.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a4607829b4dc2bbf93fdb0608e1677496"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4607829b4dc2bbf93fdb0608e1677496">&#9670;&nbsp;</a></span>readButton()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ace_button::Encoded4To2ButtonConfig::readButton </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return state of the encoded 'pin' number, corresponding to the pull-down states of the actual pins. </p>
<p>LOW means that the corresponding encoded virtual pin was pushed. </p>

<p>Reimplemented from <a class="el" href="classace__button_1_1ButtonConfig.html#a5dab877bf124bfdf5a5eb703ca123027">ace_button::ButtonConfig</a>.</p>

<p class="definition">Definition at line <a class="el" href="Encoded4To2ButtonConfig_8h_source.html#l00071">71</a> of file <a class="el" href="Encoded4To2ButtonConfig_8h_source.html">Encoded4To2ButtonConfig.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/brian/src/AceButton/src/ace_button/<a class="el" href="Encoded4To2ButtonConfig_8h_source.html">Encoded4To2ButtonConfig.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>
